package com.ccys.db.entity;

import com.ccys.db.rely.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* Created by Mybatis Generator on 2024/03/07
*/
@Data
@Table(name = "tbl_booking_order")
@NoArgsConstructor
@AllArgsConstructor
public class TblBookingOrder extends BaseEntity {
    @Column(name = "booking_id")
    private String bookingId;

    @Column(name = "product_id")
    private String productId;

    @Column(name = "prescription_id")
    private String prescriptionId;

    /**
     * 数量
     */
    @ApiModelProperty("数量")
    private Integer quantity;

    /**
     * 病人购买单价
     */
    @Column(name = "selling_price_per_unit")
    @ApiModelProperty("病人购买单价")
    private BigDecimal sellingPricePerUnit;

    /**
     * quantity*selling_price_per_unit
     */
    @Column(name = "selling_price_total")
    @ApiModelProperty("quantity*selling_price_per_unit")
    private BigDecimal sellingPriceTotal;

    /**
     * 0未选择 1selected 2paid 3deliver
     */
    @ApiModelProperty("0未选择 1selected 2paid 3deliver")
    private Integer status;

    /**
     * Cms操作是否确认
     */
    @ApiModelProperty("Cms操作是否确认")
    private Integer verified;

    /**
     * Cms做了pack之后通知医生(notify checker)，医生操作确认后记录医生的id
     */
    @Column(name = "doctor_verify")
    @ApiModelProperty("Cms做了pack之后通知医生(notify checker)，医生操作确认后记录医生的id")
    private String doctorVerify;

    /**
     * 医生确认的时间
     */
    @Column(name = "verified_on")
    @ApiModelProperty("医生确认的时间")
    private Date verifiedOn;

    /**
     * CMS操作fullfill总数量
     */
    @Column(name = "quantity_fulfilled")
    @ApiModelProperty("CMS操作fullfill总数量")
    private Integer quantityFulfilled;

    /**
     * CMS fullfill时选择的pharmacy Id
     */
    @Column(name = "dispensed_by")
    @ApiModelProperty("CMS fullfill时选择的pharmacy Id")
    private String dispensedBy;

    /**
     * 最后一次fullfill时间
     */
    @Column(name = "time_update_fulfilling")
    @ApiModelProperty("最后一次fullfill时间")
    private Date timeUpdateFulfilling;

    @Column(name = "third_party_product_id")
    private String thirdPartyProductId;

    @Column(name = "third_party_product_name")
    private String thirdPartyProductName;

    @Column(name = "third_party_product_price")
    private BigDecimal thirdPartyProductPrice;

    /**
     * 是否在排除的列表并且covered
     */
    @Column(name = "covered_diagnosis")
    @ApiModelProperty("是否在排除的列表并且covered")
    private Integer coveredDiagnosis;

    @Column(name = "covered_diagnosis_regex")
    private String coveredDiagnosisRegex;

    @Column(name = "covered_diagnosis_code")
    private String coveredDiagnosisCode;
}